package collection;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/** 集合的排序--String */
public class SortString {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("是java");
        list.add("据mklholeut");
        list.add("和si");
        list.add("蓝sahasj");
        System.out.println(list);

        Collections.sort(list, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return o1.length()-o2.length();//升序(小到大)
                //return o2.length()-o1.length();//降序(大到小)
            }
        });

        System.out.println("排除后:"+list);

        Collections.sort(list,(o1,o2)->o2.length()-o1.length());
        System.out.println("排序后:"+list);





        /*
        List<String> list = new ArrayList<>();
        list.add("jack");
        list.add("rose");
        list.add("tom");
        list.add("jerry");
        list.add("black");
        list.add("Kobe");
        System.out.println("原数据:"+list);//原数据:[jack, rose, tom, jerry, black, Kobe]
        //对英文字符串排序时，会按首字母的ASCII码排序
        //若首字母相同，则比较第2个字母的ASCII码，以此类推
        Collections.sort(list);
        System.out.println("排序之后:"+list);//排序之后:[Kobe, black, jack, jerry, rose, tom]
         */
    }
}
